diagnostic tree